1. Field of the Invention
The present invention relates to a method for motor-speed estimation, especially to a multiple-point smoothing method for motor-speed estimation.
2. Description of Prior Art
Speed measurement is inevitable for close loop control of motor. For speed measurement of motor, an encoder is used to measure the rotational speed of motor rotor. It is difficult to measure the speed of rotor with smooth and real-time property because the encoder generally does not have sufficient resolution for position quantization. However, smooth and real-time requirement is essential to automatic control. A smooth speed measurement can suppress running noise and vibration of machine. A real-time speed measurement provides fidelity for genuine speed of motor and has reduced delay to enhance high speed operation.
FIG. 1 shows the block diagram of a prior art motor controlling system, which controls the speed of a motor 10a based on a feedback measured speed of motor. A speed estimation device 20a comprises a counter 22a and a speed estimation unit 24a. An encoder 12a outputs a pulse signal to represent a measured motor position. The counter 22a processes the pulse signal to obtain a position signal P for the motor. The speed estimation unit 24a processes the position signal P of the motor to obtain a motor rotational speed VLPF. A position control unit 40a generates a speed command Vcmd based on a position command Pcmd and a feedback from the counter 22a. A speed control unit 30a generates a current command icmd based on the speed command Vcmd and sends the current command icmd to a current controlling and driving unit 50a. The current controlling and driving unit 50a accordingly drives the motor 10a based on the current command icmd.
With reference to FIGS. 2 and 3, the processing principle and processing steps for the prior art speed estimation unit 24a are illustrated. As shown in FIG. 2, the prior art speed estimation unit 24a uses a displacement within a unit time to calculate the speed V(t) of the motor.
            V      ⁡              (        t        )              =                            P          ⁡                      (            t            )                          -                  P          ⁡                      (                          t              -              T                        )                              T        ,wherein V(t) is an estimated speed, P(t) is a feedback counted position of the encoder and T is sampling time. As shown in FIG. 3, at each sampling time T (step S10a), the speed estimation unit 24a reads a counted position P(t) from the counter (step S12a). The speed estimation unit 24a then subtracts the position P(t−T) of previous sample from the current position P(t) (step S14a). The speed estimation unit 24a divides the position difference by the sampling time T to obtain an initial speed
      V    ⁡          (      t      )        =                    P        ⁡                  (          t          )                    -              P        ⁡                  (                      t            -            T                    )                      T  (step S16a). The initial speed is processed by a low pass filter for smoothing treatment to obtain a final speed estimation VLPF (step S18a).
The speed estimation in prior art speed estimation unit 24a has ripple problem due to the position quantization error of encoder. Provided that the encoder can generate Nt pulse per turn and the sampling frequency is fs Hz. The ripple speeds fr, namely the estimated speed at which ripple occurs, are multiple of (60*fs/Nt) rpm.
In motor rotation speed measurement, provided that the sampling time is (6 kHz)−1 and the resolution per turn is 10000 pulses/turn, the ripple speed fr is the multiple of 36 rpm, when the motor speed increases from 0 rpm to 500 rpm. It means that the motor controller has ripple at those motor speeds.
US patent publication 20070043528 A1 discloses a method for averaging speed estimations based on multiple sampling periods to reduce ripple, where a moving average window is used. However, this prior art method cannot solve the phase delay problem when the motor is operated at high speed.